pub fn dp_rec_mc(amount: u32) -> u32 {
    let money = [1,2,5,10,20,30,50,100];
    let mut total = amount;
    let mut ret = Vec::new();
    while total>0 {
        let n = money.iter().rev().find(|&&x| total >= x).unwrap();
        ret.push(n);
        total -= n;
    }
    ret.len() as u32
}
